/** CS2340 Spring 2011 Project
 *  Team: 40 Jiggawatt Hard Driver
 *  Suk Hwan Hong
 *  Rhys Saraceni
 *  Travis Cooper
 *  Luke Stubb
 *
 * @author 40 Jiggawatt Hard Driver
 * @version 1.0 
 */

// $codepro.audit.disable com.instantiations.assist.eclipse.analysis.audit.rule.effectivejava.alwaysOverridetoString.alwaysOverrideToString
package edu.gatech.jiggawatt.office.model;

import java.io.Serializable;

/**
 * Represents Doctor's Order
 * @author 40 Jiggawatt Hard Driver
 * @version 1.0 
 */
public class DoctorsOrder implements Serializable {

	private String prescription;
	
	private boolean bloodTest;
	private boolean urineTest;
	private boolean immunizationTest;
	
	private String followUpInstruction;
	
	private String otherInstruction;
	
	/**
	 * Creates empty doctor's order
	 */
	public DoctorsOrder()
	{
		prescription = "";
		bloodTest = false;
		urineTest = false;
		immunizationTest = false;
		followUpInstruction = "";
		otherInstruction = "";
	}
	
	/**
	 * Creates doctor's order
	 * @param pres
	 * @param bTest
	 * @param uTest
	 * @param immuTest
	 * @param followUp
	 * @param other
	 */
	public DoctorsOrder(String pres, boolean bTest, boolean uTest, boolean immuTest, String followUp, String other)
	{
		prescription = pres;
		bloodTest = bTest;
		urineTest = uTest;
		immunizationTest = immuTest;
		followUpInstruction = followUp;
		otherInstruction = other;
	}
	
	/**
	 * sets prescription
	 * @param prescription
	 */
	public void setPrescription(String prescription) {
		this.prescription = prescription;
	}
	
	/**
	 * gets prescription
	 * @return prescription
	 */
	public String getPrescription() {
		return prescription;
	}

	/**
	 * sets follow up instruction
	 * @param followUpInstruction
	 */
	public void setFollowUpInstruction(String followUpInstruction) {
		this.followUpInstruction = followUpInstruction;
	}

	/**
	 * gets follow up instruction
	 * @return follow up instruction
	 */
	public String getFollowUpInstruction() {
		return followUpInstruction;
	}
	
	/**
	 * sets other instruction
	 * @param otherInstruction
	 */
	public void setOtherInstruction(String otherInstruction) {
		this.otherInstruction = otherInstruction;
	}
	
	/**
	 * gets other instruction
	 * @return other instruction
	 */
	public String getOtherInstruction() {
		return otherInstruction;
	}

	/**
	 * sets blood test
	 * @param bloodTest
	 */
	public void setBloodTest(boolean bloodTest) {
		this.bloodTest = bloodTest;
	}
	
	/**
	 * checks if blood test is performed
	 * @return true if blood test is performed, false otherwise
	 */
	public boolean isBloodTest() {
		return bloodTest;
	}

	/**
	 * sets urine test
	 * @param urineTest
	 */
	public void setUrineTest(boolean urineTest) {
		this.urineTest = urineTest;
	}

	/**
	 * checks if urine test is performed
	 * @return true if urine test is performed, false otherwise
	 */
	public boolean isUrineTest() {
		return urineTest;
	}

	/**
	 * sets immunization test
	 * @param immunizationTest
	 */
	public void setImmunizationTest(boolean immunizationTest) {
		this.immunizationTest = immunizationTest;
	}

	/**
	 * checks if immunization test is performed
	 * @return true if immunization test is performed, false otherwise
	 */
	public boolean isImmunizationTest() {
		return immunizationTest;
	}
}